package com.itboye.ihomebank.bean;

import com.google.gson.annotations.SerializedName;

import java.io.Serializable;
import java.util.List;

/**
 *  钥匙列表 - 锁
 */
public class KeyOfLockBean implements Serializable{
    private String lock_type;
    private String lock_name;
    private lockVersion lock_version;
    private String lock_mac;
    private String lock_key;
    private String house_no;
    private String lock_flag_pos;
    private String aes_key_str;
    private String lock_alias;
    private String keyboard_pwd_version;
    private String push;

    List<ListKey> list;

    public String getLock_type() {
        return lock_type;
    }

    public void setLock_type(String lock_type) {
        this.lock_type = lock_type;
    }

    public String getLock_name() {
        return lock_name;
    }

    public void setLock_name(String lock_name) {
        this.lock_name = lock_name;
    }

    public lockVersion getLock_version() {
        return lock_version;
    }

    public void setLock_version(lockVersion lock_version) {
        this.lock_version = lock_version;
    }

    public String getLock_mac() {
        return lock_mac;
    }

    public void setLock_mac(String lock_mac) {
        this.lock_mac = lock_mac;
    }

    public String getLock_key() {
        return lock_key;
    }

    public void setLock_key(String lock_key) {
        this.lock_key = lock_key;
    }

    public String getHouse_no() {
        return house_no;
    }

    public void setHouse_no(String house_no) {
        this.house_no = house_no;
    }

    public String getLock_flag_pos() {
        return lock_flag_pos;
    }

    public void setLock_flag_pos(String lock_flag_pos) {
        this.lock_flag_pos = lock_flag_pos;
    }

    public String getAes_key_str() {
        return aes_key_str;
    }

    public void setAes_key_str(String aes_key_str) {
        this.aes_key_str = aes_key_str;
    }

    public String getLock_alias() {
        return lock_alias;
    }

    public void setLock_alias(String lock_alias) {
        this.lock_alias = lock_alias;
    }

    public String getKeyboard_pwd_version() {
        return keyboard_pwd_version;
    }

    public void setKeyboard_pwd_version(String keyboard_pwd_version) {
        this.keyboard_pwd_version = keyboard_pwd_version;
    }

    public String getPush() {
        return push;
    }

    public void setPush(String push) {
        this.push = push;
    }

    public List<ListKey> getList() {
        return list;
    }

    public void setList(List<ListKey> list) {
        this.list = list;
    }

    public class ListKey implements Serializable{
     //   String user_type;//1代表授权
        String type;//1授权钥匙,2普通钥匙 , 适用与uid(用户)
        String mark;//钥匙别名
        String id,lock_id,key_id,start,end,create_time,update_time,status,uid,lockFlagPos,adminPwd,noKeyPwd,deletePwd,aesKeyStr,timezoneRawOffset,electricQuantity,unick;

        public String getType() {
            return type;
        }

        public void setType(String type) {
            this.type = type;
        }

        public String getMark() {
            return mark;
        }

        public void setMark(String mark) {
            this.mark = mark;
        }

        public String getId() {
            return id;
        }

        public void setId(String id) {
            this.id = id;
        }

        public String getLock_id() {
            return lock_id;
        }

        public void setLock_id(String lock_id) {
            this.lock_id = lock_id;
        }

        public String getKey_id() {
            return key_id;
        }

        public void setKey_id(String key_id) {
            this.key_id = key_id;
        }

        public String getStart() {
            return start;
        }

        public void setStart(String start) {
            this.start = start;
        }

        public String getEnd() {
            return end;
        }

        public void setEnd(String end) {
            this.end = end;
        }

        public String getCreate_time() {
            return create_time;
        }

        public void setCreate_time(String create_time) {
            this.create_time = create_time;
        }

        public String getUpdate_time() {
            return update_time;
        }

        public void setUpdate_time(String update_time) {
            this.update_time = update_time;
        }

        public String getStatus() {
            return status;
        }

        public void setStatus(String status) {
            this.status = status;
        }

        public String getUid() {
            return uid;
        }

        public void setUid(String uid) {
            this.uid = uid;
        }

        public String getLockFlagPos() {
            return lockFlagPos;
        }

        public void setLockFlagPos(String lockFlagPos) {
            this.lockFlagPos = lockFlagPos;
        }

        public String getAdminPwd() {
            return adminPwd;
        }

        public void setAdminPwd(String adminPwd) {
            this.adminPwd = adminPwd;
        }

        public String getNoKeyPwd() {
            return noKeyPwd;
        }

        public void setNoKeyPwd(String noKeyPwd) {
            this.noKeyPwd = noKeyPwd;
        }

        public String getDeletePwd() {
            return deletePwd;
        }

        public void setDeletePwd(String deletePwd) {
            this.deletePwd = deletePwd;
        }

        public String getAesKeyStr() {
            return aesKeyStr;
        }

        public void setAesKeyStr(String aesKeyStr) {
            this.aesKeyStr = aesKeyStr;
        }

        public String getTimezoneRawOffset() {
            return timezoneRawOffset;
        }

        public void setTimezoneRawOffset(String timezoneRawOffset) {
            this.timezoneRawOffset = timezoneRawOffset;
        }

        public String getElectricQuantity() {
            return electricQuantity;
        }

        public void setElectricQuantity(String electricQuantity) {
            this.electricQuantity = electricQuantity;
        }

        public String getUnick() {
            return unick;
        }

        public void setUnick(String unick) {
            this.unick = unick;
        }

        @Override
        public String toString() {
            return "ListKey{" +
                    "type='" + type + '\'' +
                    ", mark='" + mark + '\'' +
                    ", id='" + id + '\'' +
                    ", lock_id='" + lock_id + '\'' +
                    ", key_id='" + key_id + '\'' +
                    ", start='" + start + '\'' +
                    ", end='" + end + '\'' +
                    ", create_time='" + create_time + '\'' +
                    ", update_time='" + update_time + '\'' +
                    ", status='" + status + '\'' +
                    ", uid='" + uid + '\'' +
                    ", lockFlagPos='" + lockFlagPos + '\'' +
                    ", adminPwd='" + adminPwd + '\'' +
                    ", noKeyPwd='" + noKeyPwd + '\'' +
                    ", deletePwd='" + deletePwd + '\'' +
                    ", aesKeyStr='" + aesKeyStr + '\'' +
                    ", timezoneRawOffset='" + timezoneRawOffset + '\'' +
                    ", electricQuantity='" + electricQuantity + '\'' +
                    ", unick='" + unick + '\'' +
                    '}';
        }
    }


    class lockVersion  implements Serializable{
        @SerializedName("groupId")
        String groupId;
        @SerializedName("protocolVersion")
        String protocolVersion;
        @SerializedName("protocolType")
        String protocolType;
        @SerializedName("orgId")
        String orgId;
        String scene;

        public String getGroupId() {
            return groupId;
        }

        public void setGroupId(String groupId) {
            this.groupId = groupId;
        }

        public String getProtocolVersion() {
            return protocolVersion;
        }

        public void setProtocolVersion(String protocolVersion) {
            this.protocolVersion = protocolVersion;
        }

        public String getProtocolType() {
            return protocolType;
        }

        public void setProtocolType(String protocolType) {
            this.protocolType = protocolType;
        }

        public String getOrgId() {
            return orgId;
        }

        public void setOrgId(String orgId) {
            this.orgId = orgId;
        }

        public String getScene() {
            return scene;
        }

        public void setScene(String scene) {
            this.scene = scene;
        }

        @Override
        public String toString() {
            return "lockVersion{" +
                    "groupId='" + groupId + '\'' +
                    ", protocolVersion='" + protocolVersion + '\'' +
                    ", protocolType='" + protocolType + '\'' +
                    ", orgId='" + orgId + '\'' +
                    ", scene='" + scene + '\'' +
                    '}';
        }
    }


    @Override
    public String toString() {
        return "KeyOfLockBean{" +
                "lock_type='" + lock_type + '\'' +
                ", lock_name='" + lock_name + '\'' +
                ", lock_version=" + lock_version +
                ", lock_mac='" + lock_mac + '\'' +
                ", lock_key='" + lock_key + '\'' +
                ", house_no='" + house_no + '\'' +
                ", lock_flag_pos='" + lock_flag_pos + '\'' +
                ", aes_key_str='" + aes_key_str + '\'' +
                ", lock_alias='" + lock_alias + '\'' +
                ", keyboard_pwd_version='" + keyboard_pwd_version + '\'' +
                ", push='" + push + '\'' +
                ", list=" + list +
                '}';
    }
}
